package com.cloud.user_info.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.cloud.entity.SysDeptArea;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 部门地区负责人
 *
 * @author yzj
 * @since 2022-11-21
 */
@Mapper
public interface SysDeptAreaMapper extends BaseMapper<SysDeptArea> {

    /**
     * 部门地区负责人分页
     *
     * @author yzj
     */
    public List<SysDeptArea> selectSysDeptAreaList(@Param("param") SysDeptArea param);

    /**
     * 根据主键查询部门负责人
     *
     * @param deptAreaId
     * @return
     */
    public SysDeptArea selectDeptAreaInfo(@Param("deptAreaId") Long deptAreaId);

    /**
     * 根据区域编号查询部门负责人
     *
     * @param areaCode
     * @return
     */
    public SysDeptArea selectDeptAreaByCode(@Param("areaCode") String areaCode);

    /**
     * 校验区域编码是否存在
     *
     * @param areaCode
     * @return
     */
    public int checkAreaCodeUnique(@Param("areaCode") String areaCode);

    /**
     * 根据主键查询区域信息
     *
     * @param areaId
     * @return
     */
    public SysDeptArea selectAreaById(@Param("areaId") Long areaId);

    /**
     * 根据部门查询区域信息
     *
     * @param deptId
     * @return
     */
    public SysDeptArea selectAreaDeptById(@Param("deptId") Long deptId);

    /**
     * 根据部门id删除部门区域信息
     *
     * @param deptId
     * @return
     */
    public int deleteAreaByDeptId(@Param("deptId") Long deptId);

    /**
     * 根据部门Id检验区域是否存在
     *
     * @param deptId
     * @return
     */
    public int checkAreaDeptUnique(@Param("deptId") Long deptId);

    /**
     * 根据区域名称查询区域信息
     *
     * @param areaName
     * @return
     */
    public SysDeptArea selectAreaByName(@Param("areaName") String areaName);

}
